package com.efast.dmom.mgmt.dao.master;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.efast.dmom.mgmt.entity.master.TmBasSuppl;
import com.efast.dmom.mgmt.utils.Assist;
public interface TmBasSupplDao{
	/**
	 * 获得TmBasSuppl数据的总行数,可以通过辅助工具Assist进行条件查询,如果没有条件则传入null
	 * @param assist
	 * @return
	 */
    long getTmBasSupplRowCount(Assist assist);
	/**
	 * 获得TmBasSuppl数据集合,可以通过辅助工具Assist进行条件查询,如果没有条件则传入null
	 * @param assist
	 * @return
	 */
    List<TmBasSuppl> selectTmBasSuppl(Assist assist);
	/**
	 * 获得一个TmBasSuppl对象,以参数TmBasSuppl对象中不为空的属性作为条件进行查询
	 * @param obj
	 * @return
	 */
    TmBasSuppl selectTmBasSupplByObj(TmBasSuppl obj);
	/**
	 * 通过TmBasSuppl的id获得TmBasSuppl对象
	 * @param id
	 * @return
	 */
    TmBasSuppl selectTmBasSupplById(Integer id);
	/**
	 * 插入TmBasSuppl到数据库,包括null值
	 * @param value
	 * @return
	 */
    int insertTmBasSuppl(TmBasSuppl value);
	/**
	 * 插入TmBasSuppl中属性值不为null的数据到数据库
	 * @param value
	 * @return
	 */
    int insertNonEmptyTmBasSuppl(TmBasSuppl value);
	/**
	 * 批量插入TmBasSuppl到数据库,包括null值
	 * @param value
	 * @return
	 */
    int insertTmBasSupplByBatch(List<TmBasSuppl> value);
	/**
	 * 通过TmBasSuppl的id删除TmBasSuppl
	 * @param id
	 * @return
	 */
    int deleteTmBasSupplById(Integer id);
	/**
	 * 通过辅助工具Assist的条件删除TmBasSuppl
	 * @param assist
	 * @return
	 */
    int deleteTmBasSuppl(Assist assist);
	/**
	 * 通过TmBasSuppl的id更新TmBasSuppl中的数据,包括null值
	 * @param enti
	 * @return
	 */
    int updateTmBasSupplById(TmBasSuppl enti);
 	/**
	 * 通过辅助工具Assist的条件更新TmBasSuppl中的数据,包括null值
	 * @param value
	 * @param assist
	 * @return
	 */
    int updateTmBasSuppl(@Param("enti") TmBasSuppl value, @Param("assist") Assist assist);
	/**
	 * 通过TmBasSuppl的id更新TmBasSuppl中属性不为null的数据
	 * @param enti
	 * @return
	 */
    int updateNonEmptyTmBasSupplById(TmBasSuppl enti);
 	/**
	 * 通过辅助工具Assist的条件更新TmBasSuppl中属性不为null的数据
	 * @param value
	 * @param assist
	 * @return
	 */
    int updateNonEmptyTmBasSuppl(@Param("enti") TmBasSuppl value, @Param("assist") Assist assist);
}